Method for interpolating an intermediate polygon p from two polygons p1 and p2

ABSTRACT

A method for interpolating an intermediate polygon P from two polygons P 1  and P 2 . The method includes, in at least one embodiment, defining a similarity measure based on a geometrical reference object, the geometrical reference object being associated with the two polygons P 1  and P 2 ; and based on the similarity measure, determining an initial pair of corresponding points. Based on this initial pair of corresponding points, in at least one embodiment of the method, a sequence of pairs of corresponding points is determined from which sequence the intermediate polygon is interpolated.

FIELD

At least one embodiment of the present invention generally relates tothe field of medical image processing and in particular generallyrelates to the area of segmentation of volumetric image data sets.

BACKGROUND

Medical facilities have come to rely more and more on computerizedsystems for the purposes of diagnosis and therapy.

Many medical imaging processes are based on high quality volumetricimage data acquired by computer-controlled high performance modalitiessuch as computer tomographs (CT), positron emission tomographs (PET) andmagnetic resonance (MR) scanners. In general, three-dimensional (3D)volumetric image data are processed by modern volume renderingprocessors to obtain two-dimensional (2D) cross-sectional views, calledslices, which are then visually examined by the radiologist for thepurposes of diagnosis or therapy. The slices allow the radiologist toexamine a condition of a patient as they show a cross-sectionalrepresentation of an organ of interest, for example the liver or thekidneys of a patient, afflicted for example by a tumor. The informationin the slices relevant for diagnosis or therapy, that is informationrelated to the organ of interest, is referred to as regions of interest.

The regions of interest are defined by coordinates of pixels in theslice or a number of parallel, spatially adjacent slices of a volumetricimage data set. The regions of interest must first be extracted by aprocedure known as segmentation before they can be made accessible to apost-processing computer system for the purposes of diagnosis, therapyor follow-up. The segmentation of the slices allows the radiologist toobtain a coordinate-wise definition of the regions of interest and tofeed this information for example into a control unit of a linearaccelerator for the purposes of radiotherapy. The linear accelerator canthen be controlled such as to direct a beam to a specific organ of thepatient as defined by the regions of interest, for example a cancerousliver.

Currently, the segmentation of the regions of interest is performedmanually or semi-automatically by the radiologist. The radiologist usesfor example a mouse or other pointer tools to outline the regions withinthe slices by contours. The coordinates within the slices marked by thecontours are then translated into polygons by mathematical or CADsoftware systems and fed into dedicated segmentation supporting softwaresystems.

There are known in the state of the prior art a number of suchsegmentation supporting software systems, for example “Live Wire”, “LiveLane” or “Interactive Active Contours”. The volumetric image datacaptured by the high performance medical modalities are capable ofacquiring the slices in smaller than 0.5 mm intervals across an axis ofthe patient. This results in the organ of interest to be represented bythe regions of interest being distributed across many hundreds ofadjacent slices. Marking the regions of interest within each one ofthose slices is therefore not feasible. The segmentation supportingsoftware system assists the radiologist in this tedious and timeconsuming but all the more important task of segmentation of regions ofinterest by using a number of different interpolation algorithms.

These algorithms interpolate from an ideally small number of polygonsrepresenting the contours of the regions of interest in those slicesactually marked by the radiologist to obtain intermediate polygons andultimately contours for the regions of interest within the slices notmarked by the radiologist.

The polygon interpolation algorithms also known as “contour morphing”,“two-dimensional shape blending”, or “boundary mapping”, take as inputtwo adjacent polygons from which the intermediate polygon isinterpolated.

The polygon interpolation algorithms normally comprise a step ofcalculating pairs of corresponding points from among the points of thetwo polygons.

Each point in the pair of corresponding points is from different ones ofthe two polygons. The pairs of corresponding points are then used forthe actual interpolation of the points of the intermediate polygon, eachpair yielding an point of the intermediate polygon.

Furthermore, the interpolation algorithms are based on a similaritymeasure used as normally restricting or constraining the step ofdetermining the pairs of corresponding points. However, interpolationalgorithms used in current segmentation supporting software systems aresuffering from a number of shortcomings.

The segmentation supporting software systems relying for example on theboundary based parametric polygon morphing algorithm by D. H. Chen andY. N. Sun (IEICE Transactions and Information Systems, Vol. E84-D, No.4, pp. 511-520, 2001) necessitate a high degree of interactivity as theyrequire the radiologist to prescribe corresponding points manuallybetween the polygons. Although this system somewhat cuts down the timefor performing the segmentation in that the radiologist is no longerneeded to perform the segmentations on all of the slices, it stillremains a time consuming task due to the semi-automatic character ofthis algorithm.

Furthermore, the method by Chen & Sun requires the slices from which thetwo polygons have been derived to be parallel. The applicability of thisalgorithm for clinical purposes is therefore restricted.

Other polygon algorithms lead to prohibitively long computation times,thus rendering corresponding segmentation supporting software systemsunsuitable for the fast-paced clinical environment.

Those polygon interpolation algorithms scale quadratically or evencubically with a number of sampling points on the two polygons used forthe interpolation. The reason for those time complexities is manifold.For example, some of the polygon interpolation algorithms require acomparison of each point of one of the polygons with each of the pointsof the other polygon. Examples of algorithms having higher complexityare provided by algorithm basing the step of determining correspondingpoints on the rasterization of areas enclosed by each of the twopolygons, see for example G. M. Treece et al., “Surface interpolationfrom sparse cross sections using region correspondence,” IEEETransactions on Medical Imaging (Vol. 19, No. 11, pp 1106-1114, November2000) or first deriving a skeleton of the polygonal shape, see forexample G. Barequet et al., “Contour interpolation by straightskeletons,” Graphical Models (Vol. 66, No. 4, pp 245-260, July 2004).Other examples are the polygon interpolation algorithm according to A.Efrat et al. that uses a similarity measure based on “geodesic width” or“link-width” which ultimately results in the algorithm to scalequadratically with the number of sample points.

As segmentation lies at the heart of many important diagnostic andtherapeutic processes there is a need for fast and efficient polygoninterpolation algorithms. There is also a need for a polygoninterpolation algorithm that is fully automatic and only requires aminimal degree of user interaction.

There is a further need for a polygon interpolation algorithm that candispense with the requirement of polygons being derived from parallelslices.

There is furthermore a need in the art for a polygon interpolationalgorithm that scales less than quadratically with the number ofsampling points.

SUMMARY

At least one embodiment of the invention addresses at least one of theneeds in the art of medical image processing in providing a system and amethod for polygon interpolation suitable for automatic segmentation ofregions of interest within slices, in at least one embodiment the methodbeing based on an easy to implement and computationally efficientsimilarity measure for calculating the pairs of corresponding points.

The solution according to at least one embodiment of the inventionallows reconstruction of three-dimensional structures such as organs ofinterest as represented in medical volumetric data sets on the basis ofintermediate polygons interpolated from pairs of polygons P₁ and P₂, thepolygons P₁ and P₂ outlining cross-sectional structures, that is regionsof interests, of the organ of interest to be reconstructed.

Accordingly, it is an object of at least one embodiment of the presentinvention to provide a method for interpolating at least oneintermediate polygon P_(i) from two adjacent polygons P₁ and P₂ themethod comprising:

-   -   defining a similarity measure based on a geometrical reference        object; the geometrical reference object is associated with the        two polygons P₁ and P₂;    -   based on the similarity measure, determining an initial pair of        corresponding points;    -   iteratively generating from the initial pair of corresponding        points a sequence of pairs of corresponding points; any pair in        the sequence of the corresponding points is related only to the        immediate predecessor pair of corresponding points in the        sequence wherein this relation is established by way of the        geometrical reference object;    -   interpolating points of the intermediate polygon either from the        initial pair of corresponding points or from one pair of        corresponding points from the generated sequence of pairs of        corresponding points.

The term “polygon” refers to a two-dimensional figure defined by a setof vertices and connecting edges. However, the term is meant also toinclude higher dimensional “polygons” such as 3-dimensional polyhedronsdefined by boundary surfaces. The polygons outline regions of interestwithin medical image data such as slices derived from volumetric dataacquired from tomographic imaging modalities. The polygons may alsorefer to figures used in key frames interpolated for the purposes ofgenerating animated cartoons.

By the term “similarity measure” is meant a function or a proceduresuitable to ascertain a similarity of the two polygons with respect totheir shape.

According to one aspect of at least one embodiment of the presentinvention, the “geometric reference object” is taken to be a circlecircumscribing both of the polygons P₁ and P₂. However, othergeometrical figures are also within the scope of the invention such asan ellipse or an ellipsoid if the polygons are higher dimensional. Inparticular, according to one aspect of at least one embodiment of thepresent invention, the geometric reference object is in a plane parallelto planes of the two polygons P₁ and P₂.

The term “pair of corresponding points” refers to a pair of points whereone point is taken from polygon P₁ and the other point is taken from thepolygon P₂.

By linearly generating, is meant a procedure where each pair ofcorresponding points in the sequence is derivable from its immediatepredecessor pair of corresponding points in the sequence, starting outwith the initial pair of corresponding points. This allows keeping thecomputation time from scaling quadratically, as there is no mutualcomparison involved of each of the points from one of the polygons P₁ orP₂ with each of the points from the other polygon.

The interpolation is based on the pairs of corresponding points in asmuch as each point of the intermediate polygon is derived from exactlyone pair of corresponding points from the sequence of pairs ofcorresponding points. The interpolation method according to at least oneembodiment of the invention is fully automatic as the iterativegeneration procedure for the pairs of corresponding points does notrequire user-interaction.

According to an alternative aspect of at least one embodiment of theinvention, the user can still require reinterpolation of a selectednumber of intermediate polygons in case some the selected intermediatepolygons are incompatible with medical knowledge.

According to one aspect of at least one embodiment of the presentinvention the definition of the similarity measure comprises:

-   -   acquiring distance profiles D1 and D2 for P₁ and P₂        respectively; the distance profiles D1 and D2 measure a        deviation of the shapes of the polygons P₁ and P₂, respectively,        from the shape of the geometrical reference object;    -   re-sampling the distance for the measures D1 and D2 at common        sampling points;    -   storing independently each of the re-sampled distance profiles        D1 and D2 as search data structures;    -   comparing the stored distance profile measures D1 and D2 to        obtain the similarity measure.

According to one aspect of at least one embodiment of the presentinvention the similarity measure includes two distance profiles D1 andD2. The distance profiles D1 and D2 are functions or procedures suitableto measure the difference of shape between polygon P₁ and the geometricreference object on the one hand and the polygon P₂ and the geometricreference object on the other hand. The shapes of the polygons P₁ and P₂are compared by reference to the shape of the geometric referenceobject. Hence, the shapes of the polygons P₁ and P₂ are comparedindirectly. This allows for a simple implementation of measuringsimilarity by the similarity measure if the geometric reference objecthas a simple shape, such as a circular shape.

The distance profiles D1 and D2 are re-sampled according to Shannon'ssampling theorem such as not to loose information concerning the shapesof the polygons P₁ and P₂ as encoded therein and such that bothre-sampled distance profiles D1 and D2 comprise an equal number ofsample points. This allows storing of the distance profiles D1 and D2 assearch data structures for example as balanced binary search trees orother suitable search data structures.

The geometric reference object is represented in parameter form by aparameterizing parameter. By using the parameterizing parameter of thegeometric reference object as a search key in the search data structurethe iterative generation procedure for the pairs of corresponding pointscan be efficiently implemented such as to even further reducedcomputation time.

According to another aspect of at least one embodiment of the presentinvention the step of determining the initial pair of correspondingpoints includes minimizing the similarity measure over the geometricreference object by using the parameterizing parameter of the geometricreference object. In this way, the initial pair of corresponding pointsfrom the associated polygons P₁ and P₂ are obtained.

The method according to at least one embodiment of the present inventionfor interpolating the intermediate polygon therefore requires thesolution of only one minimization problem. The argument of the minimumof the similarity measure over the geometric reference object is aspecific value for the parameterizing parameter of the geometricreference object. The specific value of the parameterizing parameter isthen used as a search key for a look-up within the search datastructures representing the distance profiles D1 and D2. This look-upprocedure yields the initial pair of corresponding points. The iterativegenerating procedure for the sequence of pairs of corresponding pointsrequires iterative look-ups to obtain the sequence of pairs ofcorresponding points one by one. A mutual comparison of points of thetwo polygons is not necessary, neither is there required a solution ofany further minimization problem. This allows keeping the computationtime from scaling quadratically.

A further objective of at least one embodiment of at least oneembodiment of the present invention is to provide a method for measuringa similarity of two polygons P₁ and P₂ based on the above similaritymeasure. According to one aspect of at least one embodiment of thepresent invention this method for measuring the similarity of the twopolygons P₁ and P₂ is used for the purposes of shape morphing. A methodfor measuring the similarity is used to assess as “goodness” of fit ofan intermediate polygon with respect to the two polygons P₁ and P₂. Theintermediate polygon is though to be one of a number of polygons in theseries of polygons involved in a process of morphing one of the twopolygons P₁ and P₂ into the other polygon P₂ and P₁ respectively. Themethod can be usefully employed in the field of computer graphics, keyframe animation, or shape extrusion in the field of 3D-modeling ofthree-dimensional objects.

According to yet another aspect of at least one embodiment of thepresent invention, there is provided a computer program being loadablein a memory of a computer, wherein the computer program is adapted tocarry out the steps of the methods as mentioned above.

Another aspect of at least one embodiment of the present inventionprovides a system suitable for automatically segmenting volume dataslices as acquired by medical imaging modalities. The slices are thoughtto include marked slices, having marked contours, marking regions ofinterest within the marked slices and blank slices having no markedcontours. The system includes the following components:

-   -   an interpolation unit suitable to implement the above method of        interpolating an intermediate polygon such as to obtain        interpolated marked contours in the blank slices from the marked        contours in the marked slices;    -   a super-position unit suitable for superposing the marked        contours and the interpolated marked contours such as to obtain        a representation of the regions of interest, the representations        are 3D-reconstructions of an organ of interest defined by the        regions of interest within the slices.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic drawing of the automated segmentation system.

FIG. 2 is a schematic drawing of the spatial relationships between twopolygons P₁ and P₂ and the intermediate polygon P_(i).

FIG. 3 is a schematic drawing showing the relationship between thecircumscribed circle as a geometrical reference object and two polygonsP₁ and P₂.

FIG. 4 is a schematic drawing showing how the distance profiles areacquired with reference to the geometrical reference object.

FIG. 5 shows an example of the two distance profiles D1 and D2 and thesimilarity measure D.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

Various example embodiments will now be described more fully withreference to the accompanying drawings in which only some exampleembodiments are shown. Specific structural and functional detailsdisclosed herein are merely representative for purposes of describingexample embodiments. The present invention, however, may be embodied inmany alternate forms and should not be construed as limited to only theexample embodiments set forth herein.

Accordingly, while example embodiments of the invention are capable ofvarious modifications and alternative forms, embodiments thereof areshown by way of example in the drawings and will herein be described indetail. It should be understood, however, that there is no intent tolimit example embodiments of the present invention to the particularforms disclosed. On the contrary, example embodiments are to cover allmodifications, equivalents, and alternatives falling within the scope ofthe invention. Like numbers refer to like elements throughout thedescription of the figures.

It will be understood that, although the terms first, second, etc. maybe used herein to describe various elements, these elements should notbe limited by these terms. These terms are only used to distinguish oneelement from another. For example, a first element could be termed asecond element, and, similarly, a second element could be termed a firstelement, without departing from the scope of example embodiments of thepresent invention. As used herein, the term “and/or,” includes any andall combinations of one or more of the associated listed items.

It will be understood that when an element is referred to as being“connected,” or “coupled,” to another element, it can be directlyconnected or coupled to the other element or intervening elements may bepresent. In contrast, when an element is referred to as being “directlyconnected,” or “directly coupled,” to another element, there are nointervening elements present. Other words used to describe therelationship between elements should be interpreted in a like fashion(e.g., “between,” versus “directly between,” “adjacent,” versus“directly adjacent,” etc.).

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of exampleembodiments of the invention. As used herein, the singular forms “a,”“an,” and “the,” are intended to include the plural forms as well,unless the context clearly indicates otherwise. As used herein, theterms “and/or” and “at least one of” include any and all combinations ofone or more of the associated listed items. It will be furtherunderstood that the terms “comprises,” “comprising,” “includes,” and/or“including,” when used herein, specify the presence of stated features,integers, steps, operations, elements, and/or components, but do notpreclude the presence or addition of one or more other features,integers, steps, operations, elements, components, and/or groupsthereof.

It should also be noted that in some alternative implementations, thefunctions/acts noted may occur out of the order noted in the figures.For example, two figures shown in succession may in fact be executedsubstantially concurrently or may sometimes be executed in the reverseorder, depending upon the functionality/acts involved.

Spatially relative terms, such as “beneath”, “below”, “lower”, “above”,“upper”, and the like, may be used herein for ease of description todescribe one element or feature's relationship to another element(s) orfeature(s) as illustrated in the figures. It will be understood that thespatially relative terms are intended to encompass differentorientations of the device in use or operation in addition to theorientation depicted in the figures. For example, if the device in thefigures is turned over, elements described as “below” or “beneath” otherelements or features would then be oriented “above” the other elementsor features. Thus, term such as “below” can encompass both anorientation of above and below. The device may be otherwise oriented(rotated 90 degrees or at other orientations) and the spatially relativedescriptors used herein are interpreted accordingly.

Although the terms first, second, etc. may be used herein to describevarious elements, components, regions, layers and/or sections, it shouldbe understood that these elements, components, regions, layers and/orsections should not be limited by these terms. These terms are used onlyto distinguish one element, component, region, layer, or section fromanother region, layer, or section. Thus, a first element, component,region, layer, or section discussed below could be termed a secondelement, component, region, layer, or section without departing from theteachings of the present invention.

Embodiments of a method for interpolating at least one intermediatepolygon are described hereinafter. In the following description, meaningof specific details is given to provide a thorough understanding ofembodiments of the invention. One skilled in the relevant art willrecognize, however, that the invention can be practiced without one ormore of the specific details, or with other methods, modules, entitiesetc. In other instances, well-known structures, computer relatedfunctions or operations are not shown or described in detail, as theywill be understood by those skilled in the art.

Further, the method is described with respect to slices from medicalvolumetric image data. However, it is apparent that also othercategories or another kind of data, for example like graphical data inanimation, might also be applied and processed, respectively.

Reference throughout this specification to “one/an aspect” means that aparticular feature, structure or characteristic described in connectionwith the embodiment is included in at least one embodiment of thepresent invention. Thus, the appearances of the phrases “according toone aspect” or the like in various places throughout this specificationare not necessarily all referring to the same embodiment. Furthermore,the particular features, structures or characteristics may be combinedin any suitable manner in one or more embodiments.

Referring now to FIG. 1 there is illustrated an example embodiment ofthe system according to the present invention for automaticallysegmenting slices 103 a and 103 c with respect to regions of interest104 a, 104 c within the slices 103 a and 103 c, respectively.

The slices 103 a and 103 c are derived from a volumetric data block 102obtained from a picture archive communication system 101 (PACS). Thevolumetric data cube 102 has been acquired from a patient by means of atomographic image modality for example a computer tomography (CT) or apositron emission tomograph (PET), or other such imaging modality. Theslices 103 a and 103 c are provided as medical image files in thewell-known DICOM (Digital Imaging and Communications in Medicine)format.

A radiologist 120 examines the slices 103 a and 103 c with regions ofinterest 104 a and 104 c represented as cross-sectional views of anorgan of interest. The radiologist 120 uses a marker tool 105 to outlinethe regions of interest 104 a, 104 c by contours 106 a, 106 c. Themarker tool 105—for example a mouse or an electronic stylus—is suitableto capture sets of coordinate information of the pixels making up thecontours 106 a and 106 c.

According to one aspect of at least one embodiment of the presentinvention, the radiologist 120 is replaced by an automatic markingdevice not shown), being in communication with a medical expert systemand a pattern recognition unit. According to this aspect, the userenters into the marking device a descriptor of the organ of interest.The descriptor is then communicated to the medical expert system.Responsive thereto, the medical expert system passes structuralinformation describing geometrical features and approximate locations ofthe organ of interest. Using these files, the pattern recognition unitthen scans the slices 103 a and 103 b and controls the automatic markingdevice to automatically generate the sets of coordinate information ofthe contours 106 a and 106 c.

Those sets of coordinate information of the contours 106 a and 106 c arethen passed to an approximation unit 108 in which the contours 106 a and106 c are converted into polygons P₁ and P₂, respectively. The polygonsP₁ and P₂ are represented as ordered sets of vertices and connectingedges between those vertices. The polygons P₁ and P₂ are then fed intothe interpolation unit 109 according to the invention. The interpolationunit 109 that produces as an output an intermediate polygon P_(i). Theintermediate polygon P_(i) is then superposed by the super position unit110 with the polygons P₁ and P₂ to obtain a reconstructed 3D data set112 of the organ of interest after a 3D graphical unit 111 has convertedthe polygons P₁, P_(i) and P₂ back or into contours 106 a, 106 b and 106c, respectively. The reconstructed 3D data set 112 can then be used bythe radiologist 120 for more detailed diagnostic purposes of the organof interest represented by the 3D-data set or to control a linearaccelerator for the purposes of radiotherapy of the patient.

The operation of the interpolation unit 109 will now be explained inmore detail. First there are provided some technical notes.

A polygon P is considered to be represented as an ordered sequence of nvertices ν_(i), i=0, . . . , n−1, n>2, connected by straight linesegments forming a closed polyline.

A polygon is planar if all its vertices are located on a commonEuclidean plane Π.

A polygon is simple if it does not intersect itself.

In the parameter form {right arrow over (ν)}(t), the points of a polygonare a geometric object regarded as being produced by a mapping of a freereal parameter variable tεI=[0,1]⊂

into the real Euclidean plane

(onto the points of the polygon (x_(t),y_(t)) in Cartesian coordinates):{right arrow over (ν)}:I=[0,1]→

t

{right arrow over (ν)}(t)=(x _(t) ,y _(t))Remark: The two parameters t=0 and t=1 both refer to the point given bythe first vertex ν₀={right arrow over (ν)}(0)={right arrow over (ν)}(1)of polygon P. The parameter form defines sample points on the polygon{right arrow over (ν)}(t) for each parameter t. For simplicity ofnotation, a sample point at t will also be referred to by {right arrowover (ν)}(t).

All rectangular regions that are denoted with R in the procedure beloware considered to be of equal size having the same orientation, that is,they have their axes aligned.

Prerequisites of and assumptions made by the method according to oneaspect to at least one embodiment of the present invention:

The method assumes that the two polygons P₁ and P₂ are not rotated withrespect to each other and there has not been a significant dilation orcompression of an underlying three-dimensional geometry of thevolumetric data set, i.e., the “anatomy” of the patient. Moreparticularly, deformations of the underlying three- or higherdimensional geometry being captured by P₁ and P₂ are assumed to modifycorresponding points only homeomorphically with respect to the parameterform of the two polygons P₁ and P₂. The deformation is assumed topreserve a continuous, injective—“one-to-one”—relationship betweencorresponding parameter values of the two polygons and thus may beregarded as a conformal mapping. Note that the prerequisites andassumptions made by the method according to at least one embodiment ofthe present invention are met by most three-dimensional medical imagedata as they are acquired for example by the medical imaging modalitiesCT, PET, or MR scanners, and the patient is normally required not tomove whilst the tree-dimensional medical image data is being acquired.The prerequisites and assumptions are also fulfilled for most of theanatomy captured in the three-dimensional medical image data acquired bythese modalities, in particular by all solid organs like bones, kidneys,livers and solid tissues like lesions.

The interpolation of the intermediate polygon P_(i) according to theinvention from sparsely-spaced contours outlined by the radiologist isprovided on the basis of the slices R₁ and R₂, the slices definingparallel image planes through the three- or higher-dimensional medicalimage data set is an efficient means to reduce the time and workload forthe clinician to segment and measure extended three-dimensional objectslike lesions.

A similarity measure D according to at least one embodiment of thepresent invention is specifically tailored to this task. It can becomputed efficiently and enables an easy implementation of the method,the steps of which are outlined below.

It is to be understood, that the steps are to be applied repeatedly tofurther pairs of two polygons derived from further slices or fromintermediate polygons already interpolated until a sufficient number offurther intermediate polygons have been interpolated such that the organof interest can be reconstructed to a level of detail as required.

The two simple planar polygons P₁ and P₂ are each located within its ownframe of reference, P₁ in R₁ and P₂ in R₂, each constituting afixed-sized rectangular region for the polygons. In particular, R₁ andR₂ can correspond to the slices 103 a, 103 c. Each one of the frame ofreference R₁ and R₂ is located in its own three- or higher-dimensionalEuclidean plane. More particularly, R₁ is located on Π₁ and R₂ islocated on Π₂, given the constraints that Π₁ and Π₂ are parallel to eachother, in symbols Π₁∥Π₂, and are not identical, in symbols, Π₁≠Π₂ andthat the orthographic projection of R₁ onto Π₂ yields R₂ and, viceversa, that the orthographic projection of R₂ onto Π₂ yields R₁. Thosegeometrical relationships are shown in FIG. 2.

Furthermore, an intermediate three-dimensional Euclidean plane Π_(i)specifies where the intermediate planar polygon P_(i) shall beinterpolated from the surrounding parallel planar polygons P₁ and P₂.According to one aspect of an embodiment of the present invention, Π_(i)may be taken to be parallel to Π₁ and Π₂, i.e., Π₁∥Π_(i)∥Π₂, as shown inFIG. 1. According to another aspect of the present invention, theintermediate plane Π_(i) may be taken to be non-parallel as long as theenclosed angle between the normal vectors {right arrow over (n)}₁ of Π₁and {right arrow over (n)}_(i) of Π_(i) is less than or equal to 45degrees (∠({right arrow over (n)}₁,{right arrow over (n)}_(i))>45°) suchthat an intermediate frame of reference R_(i) of P_(i) is given byprojecting R₁ or R₂ onto Π_(i) and R_(i) is completely enclosed by Π₁and Π₂.

The spatial domain polygon interpolation method according to anembodiment of the invention requires as input, along with the twopolygons P₁ and P₂ a specification of the planes Π₁, Π₂ and Π_(i). Theplanes Π₁, Π₂ and Π_(i) are specified by their normals and their mutualdistances d_(1,2), d_(1,i) and d_(2,i) as shown in FIG. 2.

The output produced by the method according to an embodiment of theinvention is a planar polygon P_(i) located within the intermediateframe of reference R_(i) on Π_(i) interpolated from the two givenadjacent polygons P₁ and P₂ as shown in FIG. 2.

The method according to an embodiment of the present invention comprisesthe following general steps:

-   -   Iteratively generating pairs of corresponding points between the        two polygons P₁ and P₂, the iteration being based on an initial        pair of corresponding points.    -   Defining and employing a distance-based similarity measure        according to the present invention. The similarity measure is        defined on a bounding circle B_(C) of two centered polygons P₁′        and P₂′. The two centered polygons are derived from the two        polygons P₁ and P₂. The bounding circle circumscribes both of        the two centered polygons P₁′ and P₂′.

Another step generates pairs of corresponding points between P₁ and P₂to interpolate the intermediate polygon P_(i) on the intermediate planeΠ_(i).

The method is straightforward to implement and can be computedefficiently in O(N log N) time.

The step of defining the similarity measure includes the following stepsfor obtaining a pair of initial corresponding parameter values({circumflex over (t)}₁,{circumflex over (t)}₂) specifying the initialpair of corresponding points of P₁ and P₂ in less than O(n³) time. Inthe following, for each of the steps, the order of time complexity isspecified.

The steps below allow implementation by standard CAD or mathematicalhard- or software modules, such as MATLAB®, Mathematica® or dedicatedfunctions or methods available in C, C++ or JAVA function or methodlibraries.

-   1. Linear time: Parameterize both, P₁ and P₂ to obtain a parameter    form for each one of the two polygons P₁ and P₂. As the roles of the    two parameter forms are entirely symmetric, they will be referred to    collectively as {right arrow over (ν)}(t). The parameter form    defines sample points on each of the polygons. Ensure that both P₁    and P₂ have equal orientation, for example clockwise.-   2. Linear time: Work out the centroids C(P₁) and C(P₂) of the two    polygons P₁ and P₂, respectively.-   3. Linear time: Center the two polygons P₁ and P₂ about their    in-plane origin O=(0,0) by translating all vertices of P₁ by the    direction vector {right arrow over (u)}₁=−C(P₁) and the vertices of    P₂ by the direction vector {right arrow over (u)}₂=−C(P₂) yielding    the two translated polygons P₁′ and P₂′ as shown in FIG. 3.-   4. O(N log N) time: Work out the bounding circle B_(C)    circumscribing all vertices of both P₁′ and P₂. B_(C) is specified    via its centroid C(B_(C)) and radius r_(B) as indicated in FIG. 3.-   5. Linear time: According to one aspect of an embodiment of the    present invention the method involves a step of calculating the    perimeters of the two polygons, denoted L₁=L(P₁) and L₂=L(P₂),    respectively, and the circumference of the bounding circle, denoted    by L_(B)=L(B_(C)). This is to increase efficiency of implementation    as it allows memory allocation during sampling and re-sampling    procedures described below. Alternatively the step of calculating    the perimeters and/or the circumference can be skipped or calculated    “on the fly”.-   5. For both polygons P₁′ and P₂′ do the following:

Linear time: as shown in FIG. 4, for each sample point {right arrow over(ν)}(t) of P₁′ and P₂′ employ some equidistantly spaced discretizationof the parameterized parameter t work out a distance of the currentsample point {right arrow over (ν)}(t) to the bounding circle B_(C) asfollows:

Calculate the two points of intersection of the line that runs throughthe centroid C(B_(C)) of the bounding circle B_(C) and the sample point{right arrow over (ν)}(t). This line is divided into two line segmentsbetween its two points of intersection with the bounding circle and{right arrow over (ν)}(t). In order to unambiguously single out adistance-defining line segment among the two line segments, the lengthof which will be taken to be the distance of the sample point {rightarrow over (ν)}(t) to the bounding circle B_(C), determine the polygon'scurrent normal vector {right arrow over (n)}_(P)(t) at the position ofthe current point {right arrow over (ν)}(t). The normal vector of theline {right arrow over (n)}₁ applied at the current polygonal point{right arrow over (ν)}(t) divides the Euclidean plane into twohalf-planes each containing exactly one of the two line segments workedout above. Choose among the two line segments the line segment whosehalf-plane contains {right arrow over (n)}_(P)(t).

This line segment is the distance-defining line segment. The point ofintersection of the distance-defining line segment with B_(C)corresponds to a parameterizing parameter of B_(C) having a certainparameter value t_(B) with t_(B)=0 defining the point of intersection ofthe bounding circle with the positive x axis. The length of thedistance-defining line segment l is the distance of the currentpolygonal point {right arrow over (ν)}(t) to the bounding circle B_(C)at parameter t_(B). The length of the distance-defining line segment isshown by example in FIG. 4 for t_(B)=0.89.

Logarithmic time: For each vertex {right arrow over (ν)}(t) of P₁′ storethe resulting pairs (t_(B),(t₁,l₁)), that is the parameter value t_(B)associated with the respective length of the distances-defining linesegment l₁ and t₁ being the parameter for the respective sampling pointon P₁′, in an ordered search data structure BBT1. According to oneaspect of an embodiment of the present invention, BBT1 is a balancedbinary search tree. The structure of BBT1 allows to linearly iterateover the stored t_(B) values, which values serve as “search keys” inincreasing order. Therewith, the search of an existing pair(t_(B),(t₁,l₁)), which is nearest to some given t_(B) value, is boundedby maximal log₂ N₁ comparisons with N₁ representing the number of storedkey-value pairs in BBT1.

Furthermore, BBT1 allows for the definition of two constant-timeoperations LN(t_(B)) and RN(t_(B)) for returning the left and rightneighbor of t_(B) or an indication that no such neighbor exists. Theinvertibility {t₁}→{t_(B)} is ensured by inserting (t_(B,)(t₁,l₁)) intoBBT1 only if LN(t_(B)) does not exist or RN(t_(B)) does not exist orLN(t_(B)).t₁<t₁<RN(t_(B)).t₁. Similarly, build up a corresponding searchdata structure BBT2 for the ordered pairs (t_(B,)(t₂,l₂)) obtained forthe vertices of P₂′.

Linear time: According to one aspect of an embodiment of the presentinvention a distance profile D₁ maps the irregularly sampled parameterpositions {t_(B)} to the length of the distance-defining line segments{l₁}. Work out a corresponding curve to acquire a distance profile D₂accordingly as shown in FIG. 5. As can be seen in FIG. 5, the distanceprofiles D₁ and D₂ provide a measure for a deviation of the shape of thetwo polygons P₁ and P₂ from the circular shape of the bounding circleB_(C), For example, the closer D₂ resembles a horizontal line, thelesser the deviation of the shape of P₂ from the circular shape of thebounding circle B_(C).

According to another aspect of an embodiment of the present invention,the distance profiles D₁ and D₂ are taken to be the stored pairs(t_(B),(t₁,l₁)) and (t_(B),(t₂,l₂)) in BBT1 and BBT2 interpreted asdiscrete mappings {t_(B)}→{(t₁,l₁)} und {t_(B)}→{(t₂,l₂)} restricted tothe second coordinate, that is to the lengths of the distance-definingline segments l₁ and l₂, respectively.

Equidistantly re-sampling the similarity mappings D₁ and D₂ on the basisof BBT1 and BBT2 at parameter positions {tilde over (t)}_(B) accordingto one aspect of an embodiment of the present invention comprises thefurther steps of employing some use case specific re-sampling intervalΔB such that Shannon's sampling theorem is fulfilled. For simplicity,the re-sampled distance profiles are also denoted by D₁ and D₂.

Linear time: Compare the distance profiles D₁ and D₂ to obtain thesimilarity measure D, in a general form, as

${\left. \left( {P_{1},P_{2}} \right)\mapsto{D\left( {D_{1},D_{2}} \right)} \right. = \left( {\int_{0}^{1}{{{D_{1} - D_{2}}}^{2}{\mathbb{d}t}}} \right)^{\frac{1}{2}}},$wherein the integration is along the parameter t_(B) over the boundingcircle B_(C). For the purposes of implementing the method forinterpolation according to an embodiment of the present invention thesimilarity measure D is discretized and the integration becomes asummation over discrete values of t_(B).

According to an embodiment of the present invention, the similaritymeasure D is subjected to discrete numerical minimization as explainedbelow. It is therefore permissible for the sake of numerical efficiencyto skip the square root and squaring of the summands in the formulaabove for the similarity measure D and to rather consider the unsigneddifference between the distance profiles D₁ and D₂:D=|D ₁ −D ₂|.

According to the prerequisites and assumptions above, the deformationsof the underlying three-dimensional geometry are homeomorphic. Thisallows, working out {tilde over (t)}₁ and {tilde over (t)}₂ by linearlyapproximating from the left and right neighbors, LN({tilde over(t)}_(B)) and RN({tilde over (t)}_(B)), respectively, according to theformula

$\overset{\sim}{t_{1}} = {\frac{\left( {\overset{\sim}{t_{B}} - {L\;{N\left( \overset{\sim}{t_{B}} \right)}}} \right)\left( {{{BBT}\;{1 \cdot {{RN}\left( \overset{\sim}{t_{B}} \right)} \cdot t_{1}}} - {{BBT}\;{1 \cdot L}\;{{N\left( \overset{\sim}{t_{B}} \right)} \cdot t_{1}}}} \right)}{{{RN}\left( \overset{\sim}{t_{B}} \right)} - {L\;{N\left( \overset{\sim}{t_{B}} \right)}}} + {{BBT}\;{1 \cdot L}\;{{N\left( \overset{\sim}{t_{B}} \right)} \cdot t_{1}}}}$and similarly for {tilde over (t)}₂, yielding the two pairs ({tilde over(t)}_(B), ({tilde over (t)}₁, {tilde over (l)}₁)) and ({tilde over(t)}_(B)({tilde over (t)}₂,{tilde over (l)}₂)), respectively, atcorresponding, equally-spaced parameter values {tilde over (t)}_(B), asshown in FIG. 5. The two pairs ({tilde over (t)}_(B),({tilde over(t)}₁,{tilde over (l)}₁)) and ({tilde over (t)}_(B)({tilde over(t)}₂,{tilde over (l)}₂)) allow an efficient representation of thedistance profiles D₁ and D₂ by storing the value pair ({tilde over(t)}₁,{tilde over (l)}₁) associated with {tilde over (t)}_(B) in anindexed vector V₁, and similarly for ({tilde over (t)}₂,{tilde over(l)}₂), in an indexed vector V₂.

The number of elements in each vector is given by

${K = {{{size}\left( V_{1} \right)} = {{{size}\left( V_{2} \right)} = \left\lfloor \frac{L_{B}}{\Delta\; B} \right\rfloor}}},{L_{B} = {L\left( B_{C} \right)}}$denoting the circumference of the bounding circle.

The discretized similarity measure D is then accordingly represented asa difference vector:V=|V ₁ −V ₂|.

Linear time: Determining the initial pair of corresponding points byminimizing the discretized similarity measureD=|D ₁ −D ₂|.See lower part of FIG. 5 for a schematic representation of theminimization of D.

The minimization of D is done by searching for the minimal differencewith respect to the lengths of the distance-defining line segments l₁and l₂ in the difference vector V=|V₁−V₂| over all k=0, . . . , K−1indices and returning the initial pair of corresponding polygonparameters ({circumflex over (t)}₁,{circumflex over (t)}₂) associated byway of the parameter form {right arrow over (ν)}(t) with the initialpair of corresponding points, i.e., determine

$\left( {\hat{t_{1}},\hat{t_{2}}} \right) = \left( {{{V_{1}\left\lbrack \hat{k} \right\rbrack} \cdot \overset{\sim}{t_{1}}},{{V_{2}\left\lbrack \hat{k} \right\rbrack} \cdot \overset{\sim}{t_{2}}}} \right)$with$\hat{k} = {\underset{{k = 0},\;\ldots\;,{K - 1}}{\text{arg}\min}{{{{{V_{1}\lbrack k\rbrack} \cdot \overset{\sim}{l_{1}}} - {{V_{2}\lbrack k\rbrack} \cdot \overset{\sim}{l_{2}}}}}.}}$

According to another aspect of an embodiment of the present invention,the above linear-time, local procedure for determining the initial pairof corresponding parameters between P₁ and P₂ can be replaced with thefollowing more robust global procedure at the cost of O(N log N)computation time:

Work out {circumflex over (k)} by locating the maximum of the cycliccross-correlation function ρ_(V) ₁ _(V) ₂ [k] for V₁[k]{tilde over (l)}₁and V₂[k]{tilde over (l)}₂ interpreted as discrete time series, whichcan be computed efficiently via the inverse fast Fourier transform ofthe cross-power spectrum S_(V) ₁ _(V) ₂ [q] of the two series

$\quad\begin{matrix}{{S_{V_{1}V_{2}}\lbrack q\rbrack} = \left. {\frac{1}{2K}{{\overset{\_}{{FFT}{\left\{ {{V_{1}\lbrack k\rbrack}\overset{\sim}{l_{1}}} \right\}\lbrack q\rbrack}}{FFT}{\left\{ {{V_{2}\lbrack k\rbrack} \cdot \overset{\sim}{l_{2}}} \right\}\lbrack q\rbrack}}}}\Rightarrow{\rho_{V_{1}V_{2}}\lbrack k\rbrack} \right.} \\{= {{IFFT}\left\{ {S_{V_{1}V_{2}}\lbrack q\rbrack} \right\}}}\end{matrix}$

See for example E. O. Brigham, “The Fast Fourier Transform andApplications,” Englewood Cliffs, N.J.: Prentice Hall, 1988). Therewith,we work out the index of optimal correspondence,

$\hat{k} = {\underset{{k = 0},\;\ldots\;,{K - 1}}{\text{arg}\max}{\rho_{V_{1}V_{2}}\lbrack k\rbrack}}$and select the initial pair of corresponding polygon parameters({circumflex over (t)}₁,{circumflex over (t)}₂)=(V₁[{circumflex over(k)}]{tilde over (t)}₁,V₂[{circumflex over (k)}]{tilde over (t)}₂) asabove.

After having determined the initial pair of corresponding points, asequence of pairs of corresponding points is iteratively generated,starting from the initial pair of corresponding polygon parameters({circumflex over (t)}₁,{circumflex over (t)}₂).

According to one aspect of an embodiment of the present invention, thepolygon parameter {circumflex over (t)}₁ is incremented by a suitableoff-set value Δt. Using the incremented polygon parameter {circumflexover (t)}₁+Δt for a reverse look up in BBT1 via {t_(B)})←{(t₁,l₁)}yields the “search key” {tilde over (t)}_(B) and a second look-up inBBT2 via {t_(B)}→{(t₂,l₂)} using the search key {tilde over (t)}_(B)yields a parameter corresponding to the parameter {circumflex over(t)}₂+Δt. This parameter together with the parameter {circumflex over(t)}₁+Δt is the next pair of corresponding parameters defining thesequence. Application of the parameter form to the next pair ofcorresponding parameters results in the next pair of correspondingpoints after the initial pair of corresponding points. In this way, thesequence of corresponding parameters is iteratively generated bysuccessively incrementing the parameter {circumflex over (t)}₁+Δt forthe points on the Polygon P₁ to obtain corresponding points on thepolygon P₂.

Minimizing V=|V₁−V₂| needs to be performed only once to obtain theinitial pair of corresponding points the initial pair of correspondingpolygon parameters ({circumflex over (t)}₁,{circumflex over (t)}₂),whereas the next pairs of corresponding points in the sequence areobtained by the simple two-fold look-up procedure based on the searchkey {tilde over (t)}_(B). There is no mutual comparison of the pointsfrom the two polygons involved in determining the pair of correspondingpoints according to an embodiment of the invention.

Finally, the interpolation step includes:

For each pair of the corresponding parameters the corresponding pair ofpoints of P₁ and P₂ are obtained by the parameter form. The points ineach of the resulting pairs of corresponding points are then connectedby a three-dimensional straight line segment. The point of intersectionof the resulting line segment with the plane Π_(i) is then determined,thus yielding the points of the intermediate polygon P_(i) by iteratingover the sequence of pairs of corresponding points as shown in FIG. 2.

The above description of illustrated embodiments of the invention is notintended to be exhaustive or to limit the invention to precise formsdisclosed. While specific embodiments of, and examples for, theinvention are described herein for illustrative purposes variousequivalent modifications are possible within the scope of the inventionand can be made without a deviating from the spirit and scope of theinvention.

For instance, the description is based on the DICOM format.Alternatively, another medical format might also be used for the methodand system according to an embodiment of the invention.

Further, the method might be implemented in software, in coded form.Alternatively, it is possible to implement the method according to anembodiment of the invention in hardware or hardware modules. Thehardware modules are then adapted to perform the functionality of thesteps of the method. Furthermore, it is possible to have a combinationof hardware and software modules.

These and other modifications can be made to the invention with regardof the above detailed description. The terms used in the followingclaims should not be construed to limit the invention to the specificembodiments disclosed in the specification and the claims. Rather, thescope of the invention is to be determined entirely by the followingclaims, which are to be construed in accordance with establisheddoctrines of claim interpretation.

Further, elements and/or features of different example embodiments maybe combined with each other and/or substituted for each other within thescope of this disclosure and appended claims.

Still further, any one of the above-described and other example featuresof the present invention may be embodied in the form of an apparatus,method, system, computer program and computer program product. Forexample, of the aforementioned methods may be embodied in the form of asystem or device, including, but not limited to, any of the structurefor performing the methodology illustrated in the drawings.

Even further, any of the aforementioned methods may be embodied in theform of a program. The program may be stored on a computer readablemedia and is adapted to perform any one of the aforementioned methodswhen run on a computer device (a device including a processor). Thus,the storage medium or computer readable medium, is adapted to storeinformation and is adapted to interact with a data processing facilityor computer device to perform the method of any of the above mentionedembodiments.

The storage medium may be a built-in medium installed inside a computerdevice main body or a removable medium arranged so that it can beseparated from the computer device main body. Examples of the built-inmedium include, but are not limited to, rewriteable non-volatilememories, such as ROMs and flash memories, and hard disks. Examples ofthe removable medium include, but are not limited to, optical storagemedia such as CD-ROMs and DVDS; magneto-optical storage media, such asMOs; magnetism storage media, including but not limited to floppy disks(trademark), cassette tapes, and removable hard disks; media with abuilt-in rewriteable non-volatile memory, including but not limited tomemory cards; and media with a built-in ROM, including but not limitedto ROM cassettes; etc. Furthermore, various information regarding storedimages, for example, property information, may be stored in any otherform, or it may be provided in other ways.

Example embodiments being thus described, it will be obvious that thesame may be varied in many ways. Such variations are not to be regardedas a departure from the spirit and scope of the present invention, andall such modifications as would be obvious to one skilled in the art areintended to be included within the scope of the following claims.

1. A method for interpolating an intermediate polygon from two polygons,the method comprising: defining, by a processor, a similarity measurebased on a geometrical reference object and distance profiles, thegeometrical reference object being one of a circle, an ellipse and anellipsoid circumscribing the two polygons and the distance profilesbeing stored as a balanced binary search tree; determining based on thesimilarity measure, an initial pair of corresponding points byminimizing the similarity measure over the geometrical reference object,to obtain the initial pair of corresponding points from the associatedtwo polygons; iteratively generating, from the initial pair ofcorresponding points, a sequence of pairs of corresponding points, anypair of corresponding points being related to an immediate predecessorpair of corresponding points by way of the geometrical reference object;and interpolating the intermediate polygon either from the initial pairof corresponding points or from one pair of corresponding points fromthe generated sequence of pairs of corresponding points.
 2. A methodaccording to claim 1, wherein defining the similarity measure comprises:acquiring the respective distance profiles for each of the two polygons,wherein the respective distance profiles are each related to a deviationfrom the geometrical reference object of a respective one of the twopolygons; re-sampling the distance profile measures at common samplingpoints; storing independently each of the re-sampled distance profilesas search data structures; and comparing the stored distance profiles toobtain the similarity measure.
 3. A method according to claim 2, whereinthe search data structure is associated with the balanced binary searchtree.
 4. System suitable for automatically segmenting volume data slicesacquired by a medical modality, the slices including marked sliceshaving marked contours marking regions of interest within the markedslices and blank slices having no marked contours, the systemcomprising: an interpolation unit, suitable to implement the methodaccording to claim 1; and a superposition unit, suitable to superposethe marked contours and the interpolated marked contours.
 5. The systemof claim 4, wherein the interpolation unit is suitable to implement themethod according to claim 1, to obtain interpolated marked contours inthe blank slices from the marked contours in the marked slices.
 6. Thesystem of claim 4, wherein the superposition unit is suitable tosuperpose the marked contours and the interpolated marked contours toobtain a representation of the regions of interests, the representationhaving a higher dimension than the slices.
 7. A non-transitory computerreadable medium including program segments for, when executed on acomputer device, causing the computer device to implement the method ofclaim
 1. 8. A method for measuring a similarity of two polygons, themethod comprising: associating, by a processor, a geometrical referenceobject with the two polygons, the geometrical reference object being acircle circumscribing the two polygons; acquiring respective distanceprofiles for each of the two polygons, wherein the respective distanceprofiles are each related to a deviation from the geometrical referenceobject of a respective one of the two polygons and the distance profilesbeing stored as a balanced binary search tree; measuring the similarityof the two polygons by comparing the distance profile, a degree ofdifference of the distance profiles being proportional to the similarityof the two polygons; and minimizing the similarity measure over thegeometrical reference object, to obtain the initial pair ofcorresponding points from the associated two polygons.
 9. A method formeasuring the similarity of two polygons according to claim 8, themethod being used for shape morphing, the intermediate polygon being oneof a number of polygons in morphing one of the two polygons into theother of the two polygons.
 10. A method for measuring the similarity oftwo polygons according to claim 9, the method being used for shapemorphing to assess a goodness of fit of an intermediate polygon withrespect to the two polygons, the intermediate polygon being one of anumber of polygons in morphing one of the two polygons into the other ofthe two polygons.
 11. A system for interpolating an intermediate polygonfrom two polygons, the system comprising: a processor to, define asimilarity measure based on a geometrical reference object and distanceprofiles, the geometrical reference object being a circle circumscribingthe two polygons and the distance profiles being stored as a balancedbinary search tree, and determine, based on the similarity measure, aninitial pair of corresponding points by minimizing the similaritymeasure over the geometrical reference object, to obtain the initialpair of corresponding points from the associated two polygons; agenerator to iteratively generate, from the initial pair ofcorresponding points, a sequence of pairs of corresponding points, anypair of corresponding points being related to an immediate predecessorpair of corresponding points by way of the geometrical reference object;and an interpolator to interpolate the intermediate polygon either fromthe initial pair of corresponding points or from one pair ofcorresponding points from the generated sequence of pairs ofcorresponding points.
 12. A system according to claim 11, whereindefining the similarity measure includes acquiring the respectivedistance profiles for each of the two polygons, and the respectivedistance profiles are each related to a deviation from the geometricalreference object of a respective one the two polygons, and the systemfurther comprises: a re-sampler to re-sample the distance profilemeasures D1 and D2 at common sampling points; a storage element to storeindependently each of the resampled distance profiles as search datastructures associated with the balanced binary search tree; and acomparer to compare the stored distance profiles to obtain thesimilarity measure.